#pragma once

#define INPUT_UP	0
#define INPUT_DOWN	1

enum Input
{
	LEFT_MOUSE, RIGHT_MOUSE,
	W_KEY, A_KEY, S_KEY, D_KEY,
	INPUT_COUNT
};

class InputManager
{
public:
	InputManager();
	~InputManager();

	void Update(void);
	void UpdateState(unsigned char input, unsigned char state);
	void UpdateInputState(WPARAM wParam, unsigned char state);

	bool InputDown(unsigned char input);
	bool InputPressed(unsigned char input);
	bool InputReleased(unsigned char input);

private:
	unsigned char	previousState[INPUT_COUNT];
	unsigned char	currentState[INPUT_COUNT];
};

